SWEA 문제 풀이 SWEA 5205 퀵 정렬 문제 풀이 퀵 정렬을 이용하여 정렬하는 문제이다. 텍스트 퀵 정렬 중 로무토 파티션 방식으로 진행하였다. 로무트 파티션 방식은 pivot을 항상 맨 마지막 값을 pivot으로 지정하여 사용하는 방식으로 기존 퀵 소트보다 조금 느리지만 훨씬 간결하게 작성 가능하다. 리스트의 맨 왼쪽을 left 맨 오른쪽을 pivot으로 지정 후 left에서 pivot까지를 순회하며 left와 right 포인터... SWEA 문제 풀이SWEA 문제 풀이 SWEA 5201 컨테이너 운반 문제 풀이 값을 받아온 후 트럭의 값을 내림차순으로 정렬한다. 이후 트럭에서 뒤에서부터 pop 후 w를 순회하며 비교하며 truck에 담으면 해당 인덱스부터 다시 w를 순회한다. 코드 결과 한 번에 성공했지만 조건을 너무 복잡하게 붙인 것 같다. 해당 부분을 더욱 깔끔하게 처리할 수 있을 것 같다.... SWEA 문제 풀이SWEA 문제 풀이 SWEA 1795 인수의 생일 파티 문제 풀이 다익스트라 알고리즘을 활용 왕복을 계산하는 것임으로 시작 노드와 정상 노드를 정상적으로 받아서 1번 시작 노드와 정상 노드를 반대로 받아서 1번 위와 같이 수행 후 더했을 때 최대가 되는 값을 출력 코드 결과 다익스트르 알고리즘 구현과 왕복을 계산할 때 굳이 모든 노드에서 다익스트라 알고리즘을 적용해야되는 게 아니다라는 것을 아는지 물어보는 문제이다. 해당 부분은 이미 알고 있었지... SWEA 문제 풀이SWEA 문제 풀이 SWEA 5207 이진탐색 문제 풀이 처음에 주어진 배열을 정렬(연습 삼아 병합 정렬을 진행해봄) 이진 탐색을 시작하면 한 쪽이 두 번 연속 나온다면 종료 이때 종료를 위해 flag를 두고 한쪽이 나오면 +1을 해주고 반대쪽이 나오는 순간 0으로 초기화 해줌 같은 쪽이 2번 연속 반복하여 나온다면 +2가 되면서 함수를 종료시킴 코드 결과 처음에 문제에 대한 이해를 잘못하고 풀어서 계속해서 틀렸다. 값을 찾아가는 도중에... SWEA 문제 풀이SWEA 문제 풀이 SWEA 14195 미생물 관찰 문제 풀이 현재 idx의 value가 A 일 때와 B 일 때를 나누어서 dfs를 순회하며 그 결과를 각각의 A 리스트와 B 리스트에 추가해줌 코드 결과 max로 최대값을 구할 때 리스트가 비어있느 경우를 고려하지 못해서 runtime error가 발생하였다. 따라서 해당 부분을 수정하기 위해 처음에 리스트에 0을 넣어주고 시작하였다.... SWEA 문제 풀이SWEA 문제 풀이 SWEA 5248 그룹 나누기 문제 풀이 인풋을 받으면 idx가 대표자가 되도록 설정 관계를 보고 새로운 대표자를 설정하여 바꾸어줌 대표자의 중복되지 않은 수를 세줌 코드 결과 대표자와 관련된 개념만 알고 있다면 편하게 풀 수 있는 문제이다.... SWEA 문제 풀이SWEA 문제 풀이
SWEA 5205 퀵 정렬 문제 풀이 퀵 정렬을 이용하여 정렬하는 문제이다. 텍스트 퀵 정렬 중 로무토 파티션 방식으로 진행하였다. 로무트 파티션 방식은 pivot을 항상 맨 마지막 값을 pivot으로 지정하여 사용하는 방식으로 기존 퀵 소트보다 조금 느리지만 훨씬 간결하게 작성 가능하다. 리스트의 맨 왼쪽을 left 맨 오른쪽을 pivot으로 지정 후 left에서 pivot까지를 순회하며 left와 right 포인터... SWEA 문제 풀이SWEA 문제 풀이 SWEA 5201 컨테이너 운반 문제 풀이 값을 받아온 후 트럭의 값을 내림차순으로 정렬한다. 이후 트럭에서 뒤에서부터 pop 후 w를 순회하며 비교하며 truck에 담으면 해당 인덱스부터 다시 w를 순회한다. 코드 결과 한 번에 성공했지만 조건을 너무 복잡하게 붙인 것 같다. 해당 부분을 더욱 깔끔하게 처리할 수 있을 것 같다.... SWEA 문제 풀이SWEA 문제 풀이 SWEA 1795 인수의 생일 파티 문제 풀이 다익스트라 알고리즘을 활용 왕복을 계산하는 것임으로 시작 노드와 정상 노드를 정상적으로 받아서 1번 시작 노드와 정상 노드를 반대로 받아서 1번 위와 같이 수행 후 더했을 때 최대가 되는 값을 출력 코드 결과 다익스트르 알고리즘 구현과 왕복을 계산할 때 굳이 모든 노드에서 다익스트라 알고리즘을 적용해야되는 게 아니다라는 것을 아는지 물어보는 문제이다. 해당 부분은 이미 알고 있었지... SWEA 문제 풀이SWEA 문제 풀이 SWEA 5207 이진탐색 문제 풀이 처음에 주어진 배열을 정렬(연습 삼아 병합 정렬을 진행해봄) 이진 탐색을 시작하면 한 쪽이 두 번 연속 나온다면 종료 이때 종료를 위해 flag를 두고 한쪽이 나오면 +1을 해주고 반대쪽이 나오는 순간 0으로 초기화 해줌 같은 쪽이 2번 연속 반복하여 나온다면 +2가 되면서 함수를 종료시킴 코드 결과 처음에 문제에 대한 이해를 잘못하고 풀어서 계속해서 틀렸다. 값을 찾아가는 도중에... SWEA 문제 풀이SWEA 문제 풀이 SWEA 14195 미생물 관찰 문제 풀이 현재 idx의 value가 A 일 때와 B 일 때를 나누어서 dfs를 순회하며 그 결과를 각각의 A 리스트와 B 리스트에 추가해줌 코드 결과 max로 최대값을 구할 때 리스트가 비어있느 경우를 고려하지 못해서 runtime error가 발생하였다. 따라서 해당 부분을 수정하기 위해 처음에 리스트에 0을 넣어주고 시작하였다.... SWEA 문제 풀이SWEA 문제 풀이 SWEA 5248 그룹 나누기 문제 풀이 인풋을 받으면 idx가 대표자가 되도록 설정 관계를 보고 새로운 대표자를 설정하여 바꾸어줌 대표자의 중복되지 않은 수를 세줌 코드 결과 대표자와 관련된 개념만 알고 있다면 편하게 풀 수 있는 문제이다.... SWEA 문제 풀이SWEA 문제 풀이